[アップデート]Amazon Kinesis Data FirehoseがRedshift Serverlessへのデータストリーム配信をサポートしました
どーも、データアナリティクス事業本部コンサルティングチームのsutoです。
タイトルのとおり、AWSのアップデートでAmazon Kinesis Data FirehoseがRedshift Serverlessへのデータストリーム配信をサポートしたのでさっそく確認してみました。
事前準備
まずはRedshift Serverlessクラスターを準備します。
今回は既に独自で準備しているRedshift Serverlessを使用させていただきます。
- RedshiftクラスターのパブリックアクセスをONに設定
- Redshift Serverlessのセキュリティグループで、Firehoseのアクセス元IPを許可
- Amazon Redshift and Amazon VPC Accessを参照、今回は東京リージョンの
13.113.196.224/27
を許可
- Amazon Redshift and Amazon VPC Accessを参照、今回は東京リージョンの
※デフォルト設定を使用したRedshift Serverless構築は以下の記事を参考にすると良いです。
※また、本番環境を意識したカスタム設定によるRedshift Serverless構築は以下の記事が参考になります。
Firehoseデリバリストリームの作成
Kinesis Data Firehoseの画面から配信ストリームを作成します。
- ソース「Direct PUT」、送信先に「Amazon Redshift」を選択
- 送信先タイプ「Serverless ワークグループ」を選択し、作成済みのRedshift Serverlessワークグループ名を選択
- Redshift接続情報やコピー先のテーブル名を指定
- S3中間バケットやCOPYオプションの設定を指定
- 今回IAMロールについては同時に新規作成とします
- 以上、入力完了したら「配信ストリームを作成」をクリック
ストリームデータ送信部分を作成
今回はKinesis Data Firehoseにある「サンプルデータを使用した配信ストリームのテスト」の機能を利用します。
- 作成した配信ストリームの詳細画面から「デモデータでテスト」をクリックしてウィザードにしたがって設定していきます
- まずステップ1で配信データのためのテーブルを作成
Create table firehose_test_table ( ticker_symbol varchar(4), sector varchar(16), change float, price float );
- ステップ2は前工程で設定済み
- よって次のステップ3で「デモデータの送信を開始」をクリックして数分待ちます
動作確認
では実際にデータ配信を確認してみます。
- 中間S3バケットとRedshift query editor v2でRedshiftテーブルを確認
上記のとおり、Redshift ServerlessのテーブルにもKinesis Data Firehoseからストリーム配信することができました。
- 最後にKinesis Data Firehoseの画面でステップ5の「デモデータの送信を停止」をクリックしてストリームを止めましょう。